System and method of intelligently recommending based on social media

ABSTRACT

A system and method of intelligently recommending items based on social media communications are provided. A communication in a first format is intercepted from a first service. An intent to transact is then detected within the communication. A recommendation engine can then be used to identify one or more items available at an ecommerce service, the one or more items related to the intent to transact within the communication. Then a reply communication can be posted to the first service in the first format, with the reply communication including the one or more identified items.

BACKGROUND

Social media websites and services (such as Facebook™ and Twitter™), as well as online discussion boards, provide a forum for users to exchange thoughts and ideas. It can be difficult, however, for services to monetize such thoughts and ideas. While advertising can be displayed, many users have become desensitized to advertisements and have simply learned to ignore them.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a network diagram depicting a network system, according to one embodiment, having a client-server architecture configured for exchanging data over a network.

FIG. 2 is a block diagram illustrating a network environment, according to some embodiments.

FIG. 3 is an example block diagram illustrating multiple components that, in one example embodiment, are provided within a publication system of a networked system.

FIG. 4 is a block diagram illustrating a data mining module, according to some embodiments.

FIG. 5 is a block diagram illustrating social applications that execute on a social networking server, such as one located on a third-party platform, according to an example embodiment.

FIG. 6 is a block diagram illustrating a database, according to an embodiment, at the social networking server.

FIG. 7 is a block diagram illustrating a system, in accordance with an example embodiment, of intelligently recommending items based on social media.

FIG. 8 is a screen capture illustrating an outcome of an execution of a method, in accordance with an example embodiment.

FIG. 9 is a screen capture illustrating an outcome of an execution of a method, in accordance with an example embodiment.

FIG. 10 is an interaction diagram illustrating a method, in accordance with an example embodiment, of selecting events or locations based on social media content.

FIG. 11 is a flow diagram illustrating a method, in accordance with another example embodiment.

FIG. 12 shows a diagrammatic representation of a machine in the example form of a computer system within which a set of instructions for causing the machine to perform any one or more of the methodologies discussed herein may be executed.

DETAILED DESCRIPTION

The description that follows includes illustrative systems, methods, techniques, instruction sequences, and computing machine program products that embody illustrative embodiments. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide an understanding of various embodiments of the inventive subject matter. It will be evident, however, to those skilled in the art that embodiments of the inventive subject matter may be practiced without these specific details. In general, well-known instruction instances, protocols, structures, and techniques have not been shown in detail.

Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the embodiments. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.

In an example embodiment, traffic can be driven from a social media service (such as Facebook™ or Twitter™) to an ecommerce service (such as eBay™ or PayPal™) by intercepting communications from the social media service and automatically generating a recommendation of relevant items for sale on the ecommerce service based on the content of the communications. The relevant items can be recommended by responding “in-kind” to the social media service communications, meaning that the relevant items are recommended in the same format that the communication that was used to determine the relevant items (e.g., if a Facebook™ post is used to determine a particular recommended item, the item may be recommended in a follow-up post, if a Tweet™ is intercepted to determine a particular recommended item, the item may be recommended in a response to the tweet).

FIG. 1 is a network diagram depicting a network system 100, according to one embodiment, having a client-server architecture configured for exchanging data over a network. For example, the network system 100 may include a network-based publisher 102 where clients may communicate and exchange data within the network system 100. The data may pertain to various functions (e.g., online item purchases) and aspects (e.g., managing content) associated with the network system 100 and its users. Although illustrated herein as a client-server architecture as an example, other embodiments may include other network architectures, such as a peer-to-peer or distributed network environment.

A data exchange platform, in an example form of a network-based publisher 102, may provide server-side functionality, via a network 104 (e.g., the Internet, wireless network, cellular network, or a Wide Area Network (WAN)) to one or more clients. The one or more clients may include users that utilize the network system 100 and more specifically, the network-based publisher 102, to exchange data over the network 104. These transactions may include transmitting, receiving (communicating) and processing data to, from, and regarding content and users of the network system 100. The data may include, but are not limited to, content and user data such as feedback data; user profiles; user attributes; product attributes; product and service reviews; product, service, manufacturer, and vendor recommendations and identifiers; social network commentary; product and service listings associated with buyers and sellers; auction bids; and transaction data, among other things.

In various embodiments, the data exchanges within the network system 100 may be dependent upon user-selected functions available through one or more client or user interfaces (UIs). The UIs may be associated with a client device, such as a client device 110 using a web client 106. The web client 106 may be in communication with the network-based publisher 102 via a web server 116. The UIs may also be associated with a client device 112 using a programmatic client 108, such as a client application. It can be appreciated that in various embodiments the client devices 110, 112 may be associated with a buyer, a seller, a third party electronic commerce platform, a payment service provider, or a shipping service provider, each in communication with the network-based publisher 102 and optionally each other. The buyers and sellers may be any one of individuals, merchants, or service providers, among other things. The client devices 110 and 112 may comprise a mobile phone, desktop computer, laptop, or any other communication device that a user may use to access the network-based publisher 102.

Turning specifically to the network-based publisher 102, an application program interface (API) server 114 and a web server 116 are coupled to, and provide programmatic and web interfaces respectively to, one or more application servers 118. The application servers 118 host one or more publication systems(s) 120 and one or more payment systems 122. The application servers 118 are, in turn, shown to be coupled to one or more database server(s) 124 that facilitate access to one or more database(s) 126.

In one embodiment, the web server 116 and the API server 114 communicate and receive data pertaining to products, listings, transactions, social network commentary, and feedback, among other things, via various user input tools. For example, the web server 116 may send and receive data to and from a toolbar or webpage on a browser application (e.g., web client 106) operating on a client device (e.g., client device 110). The API server 114 may send and receive data to and from an application (e.g., programmatic client 108) running on another client device (e.g., client device 112).

The publication system 120 publishes content on a network (e.g., the Internet). As such, the publication system 120 provides a number of publication and marketplace functions and services to users that access the network-based publisher 102. For example, the publication system(s) 120 may provide a number of services and functions to users for listing goods and/or services for sale, facilitating transactions, and reviewing and providing feedback about transactions and associated users. Additionally, the publication system(s) 120 may track and store data and metadata relating to products, listings, transactions, and user interaction with the network-based publisher 102. The publication system(s) 120 may aggregate the tracked data and metadata to perform data mining to identify trends or patterns in the data. The publication system 120 is discussed in more detail in connection with FIG. 3. While the publication system 120 is discussed in terms of a marketplace environment, it is noted that the publication system 120 may be associated with a non-marketplace environment.

The payment system 122 provides a number of payment services and functions to users. The payment system 122 allows users to accumulate value (e.g., in a commercial currency, such as the U.S. dollar, or a proprietary currency, such as “points”) in accounts, and then later to redeem the accumulated value for products (e.g., goods or services) that are made available via the publication system 120. The payment system 122 also facilitates payments from a payment mechanism (e.g., a bank account, PayPal account, or credit card) for purchases of items via the network-based marketplace. While the publication system 120 and the payment system 122 are shown in FIG. 1 to both form part of the network-based publisher 102, it will be appreciated that, in alternative embodiments, the payment system 122 may form part of a payment service that is separate and distinct from the network-based publisher 102.

FIG. 2 is a block diagram illustrating a network environment 200, according to some embodiments. Referring to FIG. 2, a client device 110 executing a web client 106 and a client device 112 executing a programmatic client 108 may communicate with a network-based publisher 102, as described with respect to FIG. 1, or a third-party platform 204 via the network 104. In some embodiments, the third-party platform 204 may be a social networking platform, a gaming platform, or another network-based publisher platform. In some embodiments, the network-based publisher 102 may publish content or applications (e.g., games, social networking applications) on the third-party platform 204 either directly or via the network 104. As client devices 110, 112 interact with third-party platform 204, the network-based publisher 102 may receive data pertaining to the interactions. The data may be received through the use of API calls to open a connection or transmit data between the network-based publisher 102 and the third-party platform 204.

Referring now to FIG. 3, an example block diagram illustrating multiple components that, in one example embodiment, are provided within the publication system 120 of the network-based publisher 102 (see FIG. 1), is shown. The publication system 120 may be hosted on dedicated or shared server machines (not shown) that are communicatively coupled to enable communications between the server machines. The multiple components themselves are communicatively coupled (e.g., via appropriate interfaces), either directly or indirectly, to each other and to various data sources, to allow information to be passed between the components or to allow the components to share and access common data. Furthermore, the components may access the one or more database(s) 126 via the one or more database servers 124, both shown in FIG. 1.

In one embodiment, the publication system 120 provides a number of publishing, listing, and price-setting mechanisms whereby a seller may list (or publish information concerning) goods or services for sale, a buyer can express interest in or indicate a desire to purchase such goods or services, and a price can be set for a transaction pertaining to the goods or services. To this end, the publication system 120 may comprise at least one publication engine 302 and one or more auction engines 304 that support auction-format listing and price setting mechanisms (e.g., English, Dutch, Chinese, Double, reverse auctions, etc.). The various auction engines 304 also provide a number of features in support of these auction-format listings, such as a reserve price feature whereby a seller may specify a reserve price in connection with a listing, and a proxy-bidding feature whereby a bidder may invoke automated proxy bidding.

A pricing engine 306 supports various price listing formats. One such format is a fixed-price listing format (e.g., the traditional classified advertisement-type listing or a catalog listing). Another format comprises a buyout-type listing. Buyout-type listings (e.g., the Buy-It-Now (BIN) technology developed by eBay Inc., of San Jose, Calif.) may be offered in conjunction with auction-format listings and may allow a buyer to purchase goods or services, which are also being offered for sale via an auction, for a fixed price that is typically higher than a starting price of an auction for an item.

A store engine 308 allows a seller to group listings within a “virtual” store, which may be branded and otherwise personalized by and for the seller. Such a virtual store may also offer promotions, incentives, and features that are specific and personalized to the seller. In one example, the seller may offer a plurality of items as BIN items in the virtual store, offer a plurality of items for auction, or a combination of both.

A reputation engine 310 allows users that transact, utilizing the network-based publisher 102, to establish, build, and maintain reputations. These reputations may be made available and published to potential trading partners. Because the publication system 120 supports person-to-person trading between unknown entities, users may otherwise have no history or other reference information whereby the trustworthiness and credibility of potential trading partners may be assessed. The reputation engine 310 allows a user, for example through feedback provided by one or more other transaction partners, to establish a reputation within the network-based publication system 120 over time. Other potential trading partners may then reference the reputation for purposes of assessing credibility and trustworthiness.

Navigation of the network-based publication system may be facilitated by a navigation module 312. For example, a search engine (not shown) of the navigation module 312 enables keyword searches of listings published via the publication system 120. In a further example, a browse engine (not shown) of the navigation module 312 allows users to browse various category, catalog, or inventory data structures according to which listings may be classified within the publication system 120. The search engine and the browse engine may provide retrieved search results or browsed listings to a client device. Various other navigation applications within the navigation engine 312 may be provided to supplement the searching and browsing applications.

In order to make listings available via the network-based publisher 102 as visually informing and attractive as possible, the publication system 120 may include a data mining module 314 that enables users to upload images for inclusion within listings and to incorporate images within viewed listings. The data mining engine 314 also receives social data from a user and utilizes the social data to identify an item depicted or described by the social data.

An API engine 316 stores API information for various third-party platforms and interfaces. For example, the API engine 316 may store API calls used to interface with a third-party platform. In the event a publication application(s) 120 is to contact a third-party application or platform, the API engine 316 may provide the appropriate API call to use to initiate contact. In some embodiments, the API engine 316 may receive parameters to be used for a call to a third-party application or platform and may generate the proper API call to initiate the contact.

A listing creation and management engine 318 (which could be a separate creation engine and a separate management engine) allows sellers to create and manage listings. Specifically, where a particular seller has authored or published a large number of listings, the management of such listings may present a challenge. The listing creation and management engine 318 provides a number of features (e.g., auto-relisting, inventory level monitors, etc.) to assist the seller in managing such listings.

A post-listing management engine 320 also assists sellers with a number of activities that typically occur post-listing. For example, upon completion of an auction facilitated by the one or more auction engines 304, a seller may wish to leave feedback regarding a particular buyer. To this end, the post-listing management engine 320 provides an interface to the reputation engine 310 allowing the seller to conveniently provide feedback regarding multiple buyers to the reputation engine 310.

A messaging engine 322 is responsible for the generation and delivery of messages to users of the network-based publisher 102. Such messages include, for example, advising users regarding the status of listings and best offers (e.g., providing an acceptance notice to a buyer who made a best offer to a seller). The messaging engine 322 may utilize any one of a number of message delivery networks and platforms to deliver messages to users. For example, the messaging engine 322 may deliver electronic mail (e-mail), an instant message (IM), a Short Message Service (SMS), text, facsimile, or voice (e.g., Voice over IP (VoIP)) messages via wired networks (e.g., the Internet), a Plain Old Telephone Service (POTS) network, or wireless networks (e.g., mobile, cellular, WiFi, WiMAX).

A data mining engine 324 analyzes the data gathered by the network-based publisher 102 from interactions between the client devices 110, 112 and the network-based publisher 102. In some embodiments, the data mining engine 324 also analyzes the data gathered by the publication system 120 from interactions between components of the network-based publisher 102 and/or client devices 110, 112 and third-party platforms, such as social networks like Twitter™, and also publications, such as eBay and Amazon. The data mining engine 324 uses the data to identify certain trends or patterns in the data. For example, the data mining engine 324 may identify patterns, which may help to improve search query processing, user profiling, and identification of relevant search results, among other things.

A taxonomy engine (not pictured) uses the patterns and trends identified by the data mining engine 324 to obtain a variety of data, including products, item listings, search queries, keywords, search results, and individual attributes of items, users, or products, among other things, and revise the publication system taxonomy as discussed below. In some embodiments, the taxonomy engine 326 may assign a score to each piece of data based on the frequency of occurrence of the piece of data in the mined set of data. In some embodiments, the taxonomy engine 326 may assign or adjust a score of a piece of data pertaining to an item (e.g., one or more keywords with logic, a product listing, an individual attribute of the item) based on input data received from users. The score may represent a relevance of the piece of data to the item or an aspect of the item. In some embodiments, the taxonomy engine 326 may compare data received from the third party platform to previously received and stored data from the third party platform. Alternatively, the taxonomy engine may compare data received from the third party platform 204 with data in the publication system's own taxonomy.

Although the various components of the publication system 120 have been defined in terms of a variety of individual modules, a skilled artisan will recognize that many of the items can be combined or organized in other ways. Furthermore, not all components of the publication system 120 have been included in FIG. 3. In general, components, protocols, structures, and techniques not directly related to functions of example embodiments (e.g., dispute resolution engine, loyalty promotion engine, personalization engines, etc.) have not been shown or discussed in detail. The description given herein simply provides a variety of example embodiments to aid the reader in an understanding of the systems and methods used herein.

FIG. 4 is a block diagram illustrating the data mining engine 324, according to some embodiments. Information may be mined from social media websites and communications, such as from Facebook™ and Twitter™ feeds. Referring to FIG. 4, an interface module 402 may store components used to interface with a third party platform such as 204 of FIG. 2 from which data is mined. The third party platform could be from eBay and/or Amazon, or from a social network such as Twitter™. Interfacing with third party platforms may entail providing data related to items about which searches or opinions from users of the third party platform are solicited. The user input may include search keywords, descriptions, opinions, or other text, along with non-textual input, such as clicks, highlighting, and other interactions with the provided item text and visual data.

A collection module 404 collects the data mined from the third party platform. For mining Twitter™, tweets and retweets of a particular search may be included. In some embodiments the publication system may also store Twitter™ IDs, their bio, location, how many followers, their following, and similar information that may be publically available from the social network. In some embodiments, the collection module 404 interfaces with the third party platform 204 directly and collects data entered by the user. In some embodiments, the collection module 404 collects the data from the interface module 402.

A database module 406 interfaces with one or more databases such as database 126 of FIG. 1 to store the data collected by the collection module 404. The database module 406 also interfaces with the one or more databases to retrieve data related to the items presented in the third party platform. For example, the database module 406 may retrieve searches related to a certain product, and provide the searches to the third party platform for purposes of comparing a user's search to previously stored searches. Based on the comparison, the interface module 402 or the taxonomy engine 326 may revise the publication system's taxonomy.

FIG. 5 is a block diagram illustrating social applications 500 that execute on a social networking server, such as one located on a third-party platform 204 of FIG. 2, according to an example embodiment. The social platform applications 500 include news feed applications 502, profile applications 504, note applications 506, forum applications 508, search applications 510, relationship applications 512, network applications 514, communication applications 516, account applications 518, photo applications 520, event applications 522, and group applications 524.

The news feed applications 502 publish events associated with the user and friends of the user on the social networking server. The news feed applications 502 may publish the events on the user profile of a user. For example, the news feed applications 502 may publish the uploading of a photo album by one user on the user profile of the user and the user profiles of friends of the user.

The profile applications 504 may maintain user profiles for each of the users on the social networking server. Further, the profile applications 504 may enable a user to restrict access to selected parts of their profile to prevent viewing by other users. The note applications 506 may be used to author notes that may be published on various user interfaces.

The forum applications 508 may maintain a forum in which users may post comments and display the forum via the profile associated with a user. The user may add comments to the forum, remove comments from the forum, and restrict visibility to other users. In addition, other users may post comments to the forum.

The search applications 510 may enable a user to perform a keyword search for users, groups, and events. In addition, the search applications 510 may enable a user to search for content (e.g., favorite movies) on profiles accessible to the user.

The relationship applications 512 may maintain relationship information for the users. The network applications 514 may facilitate the addition of social networks by a user, with the social networks based on a school, workplace, or region, or any social construct for which the user may prove an affiliation. The communication applications 516 may process incoming and outgoing messages, maintain an inbox for each user, facilitate sharing of content, facilitate interaction among friends (e.g., poking), process requests, process events, process group invitations, and process communicating notifications.

The account applications 518 may provide services to facilitate registering, updating, and deleting user accounts. The photo applications 520 may provide services to upload photographs, arrange photographs, set privacy options for albums, and tag photographs with text strings. The event applications 522 may provide services to create events, review upcoming events, and review past events. The group applications 524 may be used to maintain group information, display group information, and navigate to groups.

FIG. 6 is a block diagram illustrating a database 600, according to an embodiment, at the social networking server. The database 600 is shown to include social platform user profile information 602 that stores user profile information 604 for each user on the social networking server. The user profile information 604 may include information related to the user and, specifically, may include relationship information 606 and block information 608. The relationship information 606 may store a predetermined relationship between the user associated with the user profile information 604 and other users on the social networking server. For example, a first user may be designated a “friend,” “favorite friend,” or the like, with a second user, with the first user associated with the user profile information 604 and the respective designations associated with increasing levels of disclosure between the first user and second user. The block information 608 may store a configured preference of the user to block the addition of an item by other users to a watch list associated with the user. In some instances, one or more components of the network-based publisher 102 of FIG. 1 may be able to access specified portions of the database 600 via, for example, a programmatic interface. As such, data from the database may be mined.

In an example embodiment, social media communications (e.g., posts on a social media website, such as Facebook™ or distributed through Twitter™ feeds) may be mined for information that may be relevant to a determination of one or more items of an ecommerce system.

FIG. 7 is a block diagram illustrating a system 700, in accordance with an example embodiment, of intelligently recommending items based on social media. A communication monitor 702 may monitor communications from social media services 704, forums 706, blogs 708, and/or private applications 710. Social media services 704 may represent traditional social media web sites or services such as Facebook™ and Twitter™, but all sources 704, 706, 708 and 710 may fall under the broad classification of social media. Communications may be passed to a recommendation engine 712. The recommendation engine 712 detects an “intent to buy” in one or more of the communications. “Intent to buy” may be detected in a number of different ways. In one example embodiment, natural language processing is utilized to detect words or phrases used in the one or more communications that evident an “intent to buy.” Words or phrases in the one or more communications may then be used to search a database 714 of approved certified merchants. This database 714 may be maintained by, for example, an ecommerce system. The ecommerce system may include, for example, online publication services such as eBay™, or any other electronic commerce system that facilitate financial transactions between different parties such as sellers and buyers. One or more merchants 716 a-716 n may have previously loaded items into the database 714. The results of this search may then passed to a post module 718, which may compile one or more of the results in a communication of the same kind as the intercepted communication, and posted back to the source 704, 706, 708, 710 which generated the intercepted communication used to recommend the results. For example, if a particular communication is intercepted as a post in a social media service 704, then the post module may post a response as a post in the social media service 704, including one or more of the results.

In an example embodiment, the sources 704, 706, 708, and 710 are limited to conversational communications. This may eliminate certain non-conversational communications on the sources 704, 706, 708, 710, such as updates to user profiles.

In an example embodiment, a discount engine 720 may also be utilized. The discount engine may allow a merchant to offer a discount to a user who purchases an item based on the post from the post module 718. This discount may be varied based on a number of factors, such as demographic or other user information about the user who originated the communication used to make the recommendation, contextual information (such as time of day, day of week, type of source 704-710, etc.).

Various filters and/or recognition systems may be utilized to aid in the extraction of information from this social media communications. While text communications may be easy to parse, other types of communications, such as video or audio communications, may not be. In example embodiments, image recognition systems may be used to match items within an image to certain pre-established criteria. Text, for example, can be extracted from images. In another example embodiment, items within the image can be matched to a database of items to identify the items themselves. Image recognition can be applied to still images or to video, which is actually a combination of multiple still images. In another example embodiment, audio may be analyzed from social media communications. This audio may be from videos or from stand-alone audio clips. The audio may be converted to a waveform, and the waveform may be compared against known waveforms in a database. This may be performed using, for example, speech recognition processes, although analyzing speech is only one example of how audio can be analyzed. In another example embodiment, sounds, even background sounds, can be analyzed and classified.

It should be noted that the present disclosure can cover instances where the user evidences an intent to purchase an item, but also can cover instances where the user evidences an intent to sell, match, find, source, exchange, trade, etc. an item. These actions will be known collectively as “transacting”, and thus the system is looking for an intent to transact.

FIG. 8 is a screen capture illustrating an outcome of an execution of a method in accordance with an example embodiment. Here, screen capture 800 includes a posting 802 on an online forum where a user has expressed an intent to transact “Nike Air Max 90s.” The system may then automatically post a reply 804 on the message board with links to items that the recommendation engine has recommended.

FIG. 9 is a screen capture illustrating an outcome of an execution of a method, in accordance with an example embodiment. Here, screen capture 900 includes Tweet™ 902, where a user has expressed an intent to purchase a “Nike stand bag”. The system may then automatically Tweet™ a response 904 which includes a suggested link to an item that the recommendation engine has recommended. Additional Tweets™ may not express an intent to transact, such as Tweet™ 806. Other Tweets™ may express intent to transact other items, such as Tweet™ 908, which expresses an interest to purchase “DS M5”s. A reply 910 may again be posted with a suggested link to an item that the recommendation engine has recommended.

FIG. 10 is an interaction diagram illustrating a method 1000, in accordance with an example embodiment, of selecting events or locations based on social media content. The method 1000 utilizes a social media service 1002 and a system 1004. The system 1004 includes a communication monitor 1006, recommendation engine 1008, database of approved certified merchants 1010, discount engine 1012, and post module 1014.

At operation 1016, the communication monitor 1006 monitors a communication from the social media service 1002. At operation 1018, the communication monitor 1006 determines an intent to transact within the communication. At operation 1020, the communication monitor 1006 forwards the communication to the recommendation engine 1008. At operation 1022, the recommendation engine 1008 determines a criteria for item retrieval. This may be based on a process that identifies categories or keywords related to the detected intent to transact. At operation 1024, the recommendation engine 1008 retrieves relevant items from the database of approved certified merchants 1010. This may include passing the determined criteria for the database 1010, which then returns relevant items at operation 1026. At operation 1028, the recommendation engine 1008 may request a discount from the discount engine 1012, which determines the discount at operation 1030 and passes it back to the recommendation engine 1008 at operation 1032. At operation 1034, the recommendation engine 1008 may send the relevant items and the discount to the post module 1014. At operation 1036, the post module 1014 may post a communication with the relevant items and the discount in the same form as the original communication to the social media service 1002.

FIG. 11 is a flow diagram illustrating a method 1100, in accordance with another example embodiment. At operation 1102, a communication in a first format is intercepted from a first service. At operation 1104, an intent to transact is detected within the communication. At operation 1106, a recommendation engine is used to identify one or more items available at an ecommerce service, the one or more items related to the intent to transact. At operation 1108, a reply communication is posted to the first service in the first format, the reply communication including the one or more identified items.

FIG. 12 shows a diagrammatic representation of a machine in the example form of a computer system 1200 within which a set of instructions 1224 for causing the machine to perform any one or more of the methodologies discussed herein may be executed. In alternative embodiments, the machine operates as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. The machine may be a server computer, a client computer, a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a cellular telephone, a web appliance, a network router, switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.

The example computer system 1200 includes a processor 1202 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), or both), a main memory 1204, and a static memory 1206, which communicate with each other via a bus 1208. The computer system 1200 may further include a video display unit 1210 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 1200 also includes an alphanumeric input device 1212 (e.g., a keyboard), a cursor control device 1214 (e.g., a mouse), a disk drive unit 1216, a signal generation device 1218 (e.g., a speaker), and a network interface device 1220.

The disk drive unit 1216 includes a computer-readable medium 1222 on which is stored one or more sets of instructions 1224 (e.g., software) embodying any one or more of the methodologies or functions described herein. The instructions 1224 may also reside, completely or at least partially, within the main memory 1204 and/or within the processor 1202 during execution thereof by the computer system 1200, with the main memory 1204 and the processor 1202 also constituting machine-readable media. The instructions 1224 may further be transmitted or received over a network 1226 via the network interface device 1220.

While the computer-readable medium 1222 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions 1224. The term “machine-readable medium” shall also be taken to include any medium that is capable of storing, encoding, or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies described herein. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic media, and carrier wave signals.

Although the inventive concepts have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the inventive concepts. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.

The Abstract of the Disclosure is provided to comply with 37 C. F. R. §1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment. 

The invention claimed is:
 1. A system, comprising: a communication monitor comprising one or more processors and configured to intercept a communication in a first format from a first service, the communication further created by a user and including an image and an audio portion; a recommendation engine comprising one or more processors and configured to convert the audio portion to waveform, analyze background sounds in the waveform, detect an intent to transact within the communication based at least in part on a search performed on user profiles of other users identified in relationship information contained in a user profile for the user stored in a social platform database and at least in part on the analyzed background sounds, perform image recognition on the image to identify a product within the image that matches an item in a database of items, generate a search query for items related to the matched item, send the search query to a database of items available at an ecommerce service, and receive query results indicating locations of product pages where each of a plurality of related items are available for purchase at the ecommerce service; and a posting module comprising one or more processors and configured to post a reply communication to the first service in the first format, the reply communication including the locations of product pages.
 2. The system of claim 1, wherein the first format is a social media service posting.
 3. The system of claim 1, wherein the first format is a forum posting.
 4. The system of claim 1, wherein the first format is a blog posting.
 5. The system of claim 1, further comprising a database of approved merchants coupled to the recommendation engine.
 6. The system of claim 5, further comprising: a discount engine configured to dynamically calculate a discount or incentive available for the one or more items; and wherein the reply communication includes the discount.
 7. The system of claim 1, wherein the first format includes a video communication and the detecting the intent to transact includes utilizing image and/or voice recognition processes.
 8. A method, comprising: intercepting, at a communication monitor comprising one or more processors, a communication in a first format from a first service, the communication created by a user and including an audio portion; converting the audio portion to waveform; analyzing background sounds in the waveform; detecting, at a recommendation engine, an intent to transact within the communication based at least in part on a search performed on user profiles of other users identified in relationship information contained in a user profile for the user stored in a social platform database and at least in part on the analyzed background sounds; using the recommendation engine comprising one or more processors to perform image recognition on the image to identify a product within the image that matches an item in a database of items, generate a search query for items related to the matched item, send the search query to a database of items available at an ecommerce service, and receive query results indicating locations of product pages where each of a plurality of related items available for purchase at the ecommerce service; and posting, using a posting module comprising one or more processors, a reply communication to the first service in the first format, the reply communication including the locations of product pages.
 9. The method of claim 8, wherein the first format is a social media service posting.
 10. The method of claim 8, wherein the first format is a forum posting.
 11. The method of claim 8, wherein the first format is a blog posting.
 12. The method of claim 8, wherein the using a recommendation engine includes accessing a database of approved merchants.
 13. The method of claim 8, further comprising: dynamically calculating a discount available for the one or more items; and wherein the reply communication includes the discount.
 14. The method of claim 8, wherein the first format includes a video communication and the detecting the intent includes utilizing image or voice recognition processes.
 15. A non-transitory computer-readable storage medium comprising instructions that, when executed by at least one processor of a machine, cause the machine to perform operations comprising: intercepting, at a communication monitor comprising one or more processors, a communication in a first format from a first service, the communication created by a user and including an audio portion; converting the audio portion to waveform; analyzing background sounds in the waveform; detecting, at a recommendation engine, an intent to transact within the communication based at least in part on a search performed on user profiles of other users identified in relationship information contained in a user profile for the user stored in a social platform database and at least in part on the analyzed background sounds; using the recommendation engine comprising one or more processors to perform image recognition on the image to identify a product within the image that matches an item in a database of items, generate a search query for items related to the matched item, send the search query to a database of items available at an ecommerce service, and receive query results indicating locations of product pages where each of a plurality of related items available for purchase at the ecommerce service; and posting, using a posting module comprising one or more processors, a reply communication to the first service in the first format, the reply communication including the locations of product pages.
 16. The non-transitory computer-readable storage medium of claim 15, wherein the first format is a social media service posting.
 17. The non-transitory computer-readable storage medium of claim 15, wherein the first format is a forum posting.
 18. The non-transitory computer-readable storage medium of claim 15, wherein the first format is a blog posting.
 19. The non-transitory computer-readable storage medium of claim 15, wherein the using a recommendation engine includes accessing a database of approved merchants.
 20. The non-transitory computer-readable storage medium of claim 15, wherein the operations further comprise: dynamically calculating a discount available for the one or more items; and wherein the reply communication includes the discount. 